-
Notifications
You must be signed in to change notification settings - Fork 399
typst: article / margin layout #13879
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
gordonwoodhull
wants to merge
7
commits into
main
Choose a base branch
from
feature/typst-tufte-layout
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Collaborator
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
7d304ec to
45ade4e
Compare
Contributor
Author
|
This is about ready to merge - will squash into feature or fix per commit once tests pass. |
Add ensurePdfTextPositions test assertion for verifying element positions in tagged PDFs. Supports: - Role-based element selection (P, Figure, Table, H1, Lbl, Reference, Page) - Spatial relations (left_of, right_of, above, below) - Distance constraints (within_x, within_y) - Edge constraints for precise positioning - Zod schema validation for test specifications Co-Authored-By: Claude Opus 4.5 <[email protected]>
8e91978 to
3d029c7
Compare
Implement Tufte-style margin layout for Typst format using the marginalia package. Features: - Margin notes, figures, tables, and captions via .column-margin class - Margin citations with citeproc support (citation-location: margin) - Full-width content via .column-screen and .column-page classes - Configurable margin-geometry following marginalia's proportions - Support for subfigures and panel layouts in margins - Typst show rule for automatic margin footnote placement Co-Authored-By: Claude Opus 4.5 <[email protected]>
New Rust tool and Quarto command for gathering Typst packages for offline use in format extensions. Features: - Auto-detection from _extension.yml (template and template-partials) - Config file support (typst-gather.toml) with rootdir option - @Preview package downloading from Typst package registry - @Local package copying with exclusion filtering - --init-config flag to generate starter configuration Usage: quarto call typst-gather # Auto-detect or use config quarto call typst-gather --init-config # Generate config file Co-Authored-By: Claude Opus 4.5 <[email protected]>
The keep-typ and keep-tex options place intermediate files alongside the source file, not in the output directory. In project contexts (websites, books), the test framework now correctly locates these files. - Add inputFile parameter to verification functions - Distinguish keep-typ: true from output-ext: typ (different locations) Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add a flag to preserve test output artifacts (PDF, typ, tex, etc.) instead of deleting them after tests run. Usage: ./run-fast-tests.sh --keep-outputs docs/smoke-all/test.qmd ./run-fast-tests.sh -k docs/smoke-all/test.qmd Co-Authored-By: Claude Opus 4.5 <[email protected]>
Fix a 2021 bug in cites.lua where resolveCaptionCitations() returned boolean instead of Inlines/nil. The Inlines walker expects either a list of Inlines (modified) or nil (no changes), not true/false. This bug was exposed when margin layout changes preserved column-margin classes on FloatRefTarget, causing the previously-unreachable code path to execute. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Closes #13919 The regex for detecting bibliography section start didn't account for \protect prefix added in Pandoc 3.6+ (pandoc/pandoc@915e3672c), causing ?quarto-cite: placeholders to remain unresolved in PDF margin citations. Co-Authored-By: Claude Opus 4.5 <[email protected]>
3d029c7 to
b7849b9
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Should have feature parity with html and LaTeX on margin layout features and other Tufte layout features, using Typst's marginalia package.
Also includes:
PDF smoke-all test assertions:
ensurePdfTextPositionsensurePdfMetadatatypst-gatherNew command implemented in Rust for caching
@previewTypst packages from the internet, and staging them from@localrepos.quarto call typst-gatherfor extensions; these go into_extensions/ext-name/typst/packages/quarto dev-call typst-gatherto gather dependencies of built-in Typst templates; these go tosrc/resources/formats/typst/packagesdraft to test the rust build in ci - currently taking the simple approach and building
typst-gatherinconfigure.shbut we could build it in workflows instead.